package cp1300assignment1;

/**
 *
 * @author Simon Marshall // jc209673 \\
 */
public class GridModel {

    private int horizontalLaneNum;
    private int verticalLaneNum;
    private int gridSize;
    private double horizontalCarProbability;
    private double verticalCarProbability;
    private int simulationCycle;
    private int runCycle;
    private boolean Exit;

    /**
     *
     * @return
     */
    public int getGridSize() {
        return gridSize;
    }

    /**
     *
     * @param gridSize
     */
    public void setGridSize(int gridSize) {
        this.gridSize = gridSize;
    }

    /**
     *
     */
    public GridModel() {
        init();
    }

    private void init() {
        horizontalLaneNum = 1;
        verticalLaneNum = 1;
        gridSize = 50;
        horizontalCarProbability = 1;
        verticalCarProbability = 1;
        simulationCycle = 10;
        runCycle = 1;
    }

    /**
     *
     * @return
     */
    public int horizontalLaneNum() {
        return horizontalLaneNum;
    }

    /**
     *
     * @param horizontalLaneNum
     */
    public void sethorizontalLaneNum(int horizontalLaneNum) {
        this.horizontalLaneNum = horizontalLaneNum;
    }

    /**
     *
     * @return
     */
    public int getverticalLaneNum() {
        return verticalLaneNum;
    }

    /**
     *
     * @param verticalLaneNum
     */
    public void verticalLaneNum(int verticalLaneNum) {
        this.verticalLaneNum = verticalLaneNum;
    }

    /**
     *
     * @param verticalLaneNum
     */
    public void setverticalLaneNum(int verticalLaneNum) {
        this.verticalLaneNum = verticalLaneNum;
    }

    int gethorizontalLaneNum() {
        return horizontalLaneNum;
    }

    /**
     *
     * @return
     */
    public double getverticalCarProbability() {
        return verticalCarProbability;
    }

     /**
      *
      * @return
      */
     public double gethorizontalCarProbability() {
        return horizontalCarProbability;
    }

     /**
      *
      * @param verticalCarProbability
      */
     public void setverticalCarProbability(double verticalCarProbability) {
        this.verticalCarProbability = verticalCarProbability;
    }

    /**
     *
     * @param horizontalCarProbability
     */
    public void sethorizontalCarProbability(double horizontalCarProbability) {
        this.horizontalCarProbability = horizontalCarProbability;
    }

    /**
     *
     * @return
     */
    public int getsimulationCycle() {
        return simulationCycle;
    }

    /**
     *
     * @param simulationCycle
     */
    public void setsimulationCycle(int simulationCycle) {
        this.simulationCycle = simulationCycle;
    }

    /**
     *
     * @return
     */
    public int getrunCycle() {
        return runCycle;
    }

    /**
     *
     * @param runCycle
     */
    public void setrunCycle(int runCycle){
        this.runCycle = runCycle;
    }

    /**
     *
     * @return
     */
    public boolean isExit() {
        return Exit;
    }

    /**
     *
     * @param Exit
     */
    public void setExit(boolean Exit) {
        this.Exit = Exit;
    }
}
